summaryrefslogtreecommitdiffstats
path: root/gfx/angle/cherry_picks.txt
blob: b5df62cdbe2866110df4352498e32de61b07bae2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
commit fa5e0bac2b3b087e14a06b468e354fc6a54b264a
Author: Geoff Lang <geofflang@chromium.org>
Date:   Wed Sep 18 16:42:28 2019 -0400

    Fix depth pitch calculations for compressed textures.
    
    Depth pitch computations were not taking into account the block size
    and simply multiplying the row pitch with the pixel height.  This caused
    our load functions to use a very high depth pitch, reading past the end
    of the user-supplied buffer.
    
    BUG=angleproject:3190
    BUG=angleproject:3920
    
    Change-Id: I4ef4763b542735993568c51ae4b5a235659b9094
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1811837
    Reviewed-by: Tim Van Patten <timvp@google.com>
    Reviewed-by: Ian Elliott <ianelliott@google.com>
    Commit-Queue: Geoff Lang <geofflang@chromium.org>

commit 3a998d51928fb5856be5299fc189434d2da2e946
Author: Jeff Muizelaar <jrmuizel@gmail.com>
Date:   Mon Nov 9 17:09:12 2020 -0500

    Bug 1620075. Add a feature flag to allow ES3 on 10.0 devices. (#26)
    
    This lets us run WebRender on devices that only support D3D 10.0

commit cf6c1604e64084b97bc42d271a0abd9abcfc97a8
Author: Geoff Lang <geofflang@chromium.org>
Date:   Wed May 13 18:50:51 2020 -0400

    Unset the ActiveTextureCache entry if the program does not reference it
    
    When changing uniforms of a program, State::onActiveTextureChange is
    called to update the ActiveTextureCache. If the sampler uniform type
    changes to TextureType::InvalidEnum, the entry in ActiveTextureCache was
    not cleared. This causes stale entries in ActiveTextureCache because the
    cache no longer matches what textures are bound and the cache does not
    add references to the textures in it.
    
    BUG=chromium:1078375
    BUG=chromium:1072406
    BUG=chromium:1078866
    
    Change-Id: If9719dcd4fc865b2301db450eb8115e7cfe46c4a
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2199654
    Reviewed-by: Tim Van Patten <timvp@google.com>
    Commit-Queue: Geoff Lang <geofflang@chromium.org>

commit eabf2a79aac36223b5ab5c5b0810d5522095f0bc
Author: Jeff Muizelaar <jrmuizel@gmail.com>
Date:   Mon May 11 13:01:46 2020 -0400

    Use deviceContext instead of deviceContext1 (#24)
    
    Sometimes we don't have a deviceContext1 (on Win7) and would crash. We
    on't have any need to use it so just use deviceContext.

commit 19f1bef071c32df60d9d62a7907c42270d0a3dd7
Author: Jeff Muizelaar <jrmuizel@gmail.com>
Date:   Fri May 8 15:08:24 2020 -0400

    Handle a null blend state. (#23)
    
    Null is used as the default blend state so we have to check for it.

commit 8df54289d717eb0624a0ee16fd681c73a9472af4
Author: Jeff Muizelaar <jrmuizel@gmail.com>
Date:   Wed May 6 14:04:42 2020 -0400

    Don't use ClearView if we previously used dual source blending on Intel gen6. (#22)
    
    Doing a ClearView after a dual source blend seems to cause a TDR on
    Intel SandyBridge. Presumeably this is because the ClearView is
    implemented as a regular draw and the driver doesn't properly set up the
    state.
    
    If we detect that this is going to happen we fall back to the manual
    draw call path. This lets us use ClearView most of the time still.

commit 3885ee272685941f6dfb6cd941d550b107f033d2
Author: Jeff Gilbert <jgilbert@mozilla.com>
Date:   Wed Jan 22 18:42:56 2020 -0800

    Validate `context` before use in ValidateStreamConsumerGLTextureExternalAttribsNV.
    
    Firefox bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1608235
    
    Bug: angleproject:4333
    Change-Id: I957b6412f7c744e4bbaa7d8084b3c81ee58d45ca

commit 5eaf76b0bfd1f149d7b03393500c6e49a393c167
Author: Jeff Gilbert <jgilbert@mozilla.com>
Date:   Thu Dec 26 20:58:48 2019 -0800

    Lost no-error context should gracefully handle GetProgramiv.
    
    Includes test that a lost no-error context doesn't crash on getProgramiv.
    Firefox bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1601703
    
    Bug: angleproject:4244
    Change-Id: Iaf86cabd0e70d644d5b0e9ef2f51e9edeee5d020

commit 85f04c65943e0a7070a1419fffa246e5ec39d1a1
Author: Jeff Gilbert <jgilbert@mozilla.com>
Date:   Thu Dec 26 17:43:41 2019 -0800

    clang-format
    
    Change-Id: Iadf327c12bc43d7daedcd80fc08683c55c182ccc

commit f75ca830a4276c1b757f866aba3ab2429a27f69c
Author: Dzmitry Malyshau <dmalyshau@mozilla.com>
Date:   Thu Dec 5 13:02:14 2019 -0500

    Restrict the slow texture upload workaround to 128bit formats. (#21)
    
    The workaround is slow for having a CPU-visible mirror of the texture, but that mirror is not properly recycled with regards to GPU usage, thus causing a CPU stall on update.
    
    Original reports were related to WebRender vertex texture updates that are RGBA32F and RGBA32U formats. Limiting the workaround to these formats would allow the affected platforms to upload regular texture data faster without stalls.

commit 6bbe8f55d3e4b3b44394af323c5842296938ceab
Author: Lee Salzman <lsalzman@mozilla.com>
Date:   Fri Aug 2 07:11:16 2019 +1000

    Use image upload workaround for Intel Ivy Bridge with D3D11 renderer.
    
    Firefox bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1578910
    
    Bug: angleproject:3980
    Change-Id: Ia14c5afd989365975bc57b303e59b4ef7669d522
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1845664
    Reviewed-by: Geoff Lang <geofflang@chromium.org>
    Commit-Queue: Geoff Lang <geofflang@chromium.org>

commit fe53e2b60af2314d7fe7040915c1499ef3bb7274
Author: Miko Mynttinen <mikokm@gmail.com>
Date:   Fri Nov 1 17:23:03 2019 +0100

    Remove static_assert for global mutex

commit 7d5a10ac34cac9f629d0080302f1a754e902c66e
Author: Miko Mynttinen <mikokm@gmail.com>
Date:   Thu Sep 5 18:04:32 2019 +0200

    Do not override symbol visibility attribute on non-windows builds

commit 0f5a52939b91442075a787523fcf394bdccd4d54
Author: Miko Mynttinen <mikokm@gmail.com>
Date:   Tue Sep 3 18:54:54 2019 +0200

    Disable debug layers

commit fea78b079b9e778e240b06a0b8deadf57fe6d75a
Author: Miko Mynttinen <mikokm@gmail.com>
Date:   Tue Sep 3 20:04:28 2019 +0200

    Fix MinGW include

commit 811d7beadb57fdd4c999d0702fb48085b770c078
Author: Jeff Gilbert <jgilbert@mozilla.com>
Date:   Wed Mar 27 13:52:04 2019 -0700

    Don't clamp in glBlendColor if context supports renderable [half-]float.
    
    Add test for glBlendColor >1.0, skipped on D3D9 since it's unsupportable
    there.
    
    Bug: angleproject:3323
    Change-Id: I3fcf867dae96bdadf8a0183269d8f27b659d0baf

commit ea4db0f4e0c1b70dbe6e204e6afe77b23b8ea256
Author: Glenn Watson <39062770+gw3583@users.noreply.github.com>
Date:   Fri Aug 2 07:11:16 2019 +1000

    Fix occasional corruption of vertex textures in HD4600 GPUs. (#19)
    
    This appears to be caused by the UpdateSubResource call,
    which is worked around by enabling the other image upload
    path that ANGLE supports.
    
    The workaround doesn't include a driver version, since the
    bug is occurring in the most recent driver that is currently
    available (15.40.42.5063, released 19th Mar 2019).

Cherries picked
================================================================================
Merge base from: origin/chromium/3865

commit 08b97da894b278c10e70b6888ac65e3972a13b31
Author: Shahbaz Youssefi <syoussefi@chromium.org>
Date:   Tue Jul 23 12:07:13 2019 -0400

    Vulkan: Fix staging buffer alignment for pixel sizes > 4
    
    Previously, all non-compressed formats were satisfied with a 4-byte
    alignment.  The introduction of float formats changes this.
    
    This change calculates the necessary alignment using the same code path
    as compressed formats.
    
    Also fixes RGB9E5's pixelByte being calculated as 3 instead of 4.
    
    Bug: angleproject:3731
    Change-Id: I6abfd1c294e7f863eb99d2468eaac09e5d714039
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1715205
    Reviewed-by: Mohan Maiya <m.maiya@samsung.com>
    Reviewed-by: Jamie Madill <jmadill@chromium.org>
    Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>