{"action":"created","issue":{"url":"https://api.github.com/repos/szeged/webrender/issues/189","repository_url":"https://api.github.com/repos/szeged/webrender","labels_url":"https://api.github.com/repos/szeged/webrender/issues/189/labels{/name}","comments_url":"https://api.github.com/repos/szeged/webrender/issues/189/comments","events_url":"https://api.github.com/repos/szeged/webrender/issues/189/events","html_url":"https://github.com/szeged/webrender/issues/189","id":332861027,"node_id":"MDU6SXNzdWUzMzI4NjEwMjc=","number":189,"title":"Run wrench with metal backend","user":{"login":"dati91","id":2149430,"node_id":"MDQ6VXNlcjIxNDk0MzA=","avatar_url":"https://avatars2.githubusercontent.com/u/2149430?v=4","gravatar_id":"","url":"https://api.github.com/users/dati91","html_url":"https://github.com/dati91","followers_url":"https://api.github.com/users/dati91/followers","following_url":"https://api.github.com/users/dati91/following{/other_user}","gists_url":"https://api.github.com/users/dati91/gists{/gist_id}","starred_url":"https://api.github.com/users/dati91/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dati91/subscriptions","organizations_url":"https://api.github.com/users/dati91/orgs","repos_url":"https://api.github.com/users/dati91/repos","events_url":"https://api.github.com/users/dati91/events{/privacy}","received_events_url":"https://api.github.com/users/dati91/received_events","type":"User","site_admin":false},"labels":[{"id":562172170,"node_id":"MDU6TGFiZWw1NjIxNzIxNzA=","url":"https://api.github.com/repos/szeged/webrender/labels/in%20progress","name":"in progress","color":"ededed","default":false},{"id":966028520,"node_id":"MDU6TGFiZWw5NjYwMjg1MjA=","url":"https://api.github.com/repos/szeged/webrender/labels/metal","name":"metal","color":"02e5a8","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":33,"created_at":"2018-06-15T17:43:19Z","updated_at":"2018-07-18T13:48:28Z","closed_at":null,"author_association":"MEMBER","body":"We finally started to work on enabling the metal backend.\r\n\r\nAnd managed to run into some shader compilation errors:\r\n```\r\nthread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: CompilationFailed(\"The vertex function output structure may not include a matrix or array.\")', libcore/result.rs:945:5\r\n```\r\n\r\n```\r\nthread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: CompilationFailed(\"Compilation failed:\r\nprogram_source:302:5: error: use of undeclared identifier \\'gl_Position\\'; did you mean \\'aPosition\\'?\r\n    gl_Position = v_521.uTransform * float4(final_pos, z, 1.0);\r\n    ^~~~~~~~~~~\r\n    aPosition\r\nprogram_source:287:285: note: \\'aPosition\\' declared here\r\nVertexInfo write_vertex(thread const RectWithSize& instance_rect, thread const RectWithSize& local_clip_rect, thread const float& z, thread const ClipScrollNode& scroll_node, thread const PictureTask& task, thread const RectWithSize& snap_rect, constant Locals& v_521, thread float3& aPosition)\r\n                                                                                                                                                                                                                                                                                            ^\r\nprogram_source:302:17: error: assigning to \\'float3\\' (aka \\'vector_float3\\') from incompatible type \\'vec<float, 4>\\' (vector of 4 \\'float\\' values)\r\n    gl_Position = v_521.uTransform * float4(final_pos, z, 1.0);\r\n                ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\nprogram_source:317:5: error: use of undeclared identifier \\'vTransformBounds\\'\r\n    vTransformBounds = local_bounds;\r\n    ^\r\nprogram_source:342:5: error: use of undeclared identifier \\'gl_Position\\'; did you mean \\'aPosition\\'?\r\n    gl_Position = v_521.uTransform * final_pos;\r\n    ^~~~~~~~~~~\r\n    aPosition\r\nprogram_source:320:386: note: \\'aPosition\\' declared here\r\nVertexInfo write_transform_vertex(thread RectWithSize& local_segment_rect, thread const RectWithSize& local_prim_rect, thread const RectWithSize& local_clip_rect, thread const float4& clip_edge_mask, thread const float& z, thread const ClipScrollNode& scroll_node, thread const PictureTask& task, thread const bool& do_perspective_interpolation, constant Locals& v_521, thread float3& aPosition)\r\n                                                                                                                                                                                                                                                                                                                                                                                                 ^\r\nprogram_source:342:17: error: assigning to \\'float3\\' (aka \\'vector_float3\\') from incompatible type \\'vec<float, 4>\\' (vector of 4 \\'float\\' values)\r\n    gl_Position = v_521.uTransform * final_pos;\r\n                ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\nprogram_source:405:5: error: use of undeclared identifier \\'vUv\\'\r\n    vUv.z = res.layer;\r\n    ^\r\nprogram_source:408:5: error: use of undeclared identifier \\'vUvSampleBounds\\'\r\n    vUvSampleBounds = float4(min_uv + float2(0.5), max_uv - float2(0.5)) / texture_size.xyxy;\r\n    ^\r\nprogram_source:412:5: error: use of undeclared identifier \\'vUv\\'\r\n    vUv = float3(_1273.x, _1273.y, vUv.z);\r\n    ^\r\nprogram_source:412:36: error: use of undeclared identifier \\'vUv\\'\r\n    vUv = float3(_1273.x, _1273.y, vUv.z);\r\n                                   ^\r\nprogram_source:413:20: error: use of undeclared identifier \\'vUv\\'\r\n    float2 _1279 = vUv.xy / texture_size;\r\n                   ^\r\nprogram_source:414:5: error: use of undeclared identifier \\'vUv\\'\r\n    vUv = float3(_1279.x, _1279.y, vUv.z);\r\n    ^\r\nprogram_source:414:36: error: use of undeclared identifier \\'vUv\\'\r\n    vUv = float3(_1279.x, _1279.y, vUv.z);\r\n                                   ^\r\nprogram_source:415:20: error: use of undeclared identifier \\'vUv\\'\r\n    float2 _1285 = vUv.xy * repeat;\r\n                   ^\r\nprogram_source:416:5: error: use of undeclared identifier \\'vUv\\'\r\n    vUv = float3(_1285.x, _1285.y, vUv.z);\r\n    ^\r\nprogram_source:416:36: error: use of undeclared identifier \\'vUv\\'\r\n    vUv = float3(_1285.x, _1285.y, vUv.z);\r\n                                   ^\r\nprogram_source:417:5: error: use of undeclared identifier \\'vUvBounds\\'\r\n    vUvBounds = float4(min_uv, max_uv) / texture_size.xyxy;\r\n    ^\r\nprogram_source:437:14: warning: unused variable \\'clip_area\\'\r\n    ClipArea clip_area = fetch_clip_area(param_4, tRenderTasks, sRenderTasks);\r\n             ^\r\n\")', libcore/result.rs:945:5Õ\r\n```"},"comment":{"url":"https://api.github.com/repos/szeged/webrender/issues/comments/405937323","html_url":"https://github.com/szeged/webrender/issues/189#issuecomment-405937323","issue_url":"https://api.github.com/repos/szeged/webrender/issues/189","id":405937323,"node_id":"MDEyOklzc3VlQ29tbWVudDQwNTkzNzMyMw==","user":{"login":"kvark","id":107301,"node_id":"MDQ6VXNlcjEwNzMwMQ==","avatar_url":"https://avatars1.githubusercontent.com/u/107301?v=4","gravatar_id":"","url":"https://api.github.com/users/kvark","html_url":"https://github.com/kvark","followers_url":"https://api.github.com/users/kvark/followers","following_url":"https://api.github.com/users/kvark/following{/other_user}","gists_url":"https://api.github.com/users/kvark/gists{/gist_id}","starred_url":"https://api.github.com/users/kvark/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kvark/subscriptions","organizations_url":"https://api.github.com/users/kvark/orgs","repos_url":"https://api.github.com/users/kvark/repos","events_url":"https://api.github.com/users/kvark/events{/privacy}","received_events_url":"https://api.github.com/users/kvark/received_events","type":"User","site_admin":false},"created_at":"2018-07-18T13:48:28Z","updated_at":"2018-07-18T13:48:28Z","author_association":"NONE","body":"Could it be that fences are incorrect on your side? The timing characteristics of multishot versus oneshot are entirely different on Metal (while the same on other backends), so it's expected that you get more failures if your fencing is wrong.\n\n> On Jul 18, 2018, at 09:01, Attila Dusnoki <notifications@github.com> wrote:\n> \n> I checked and the fences looks alright.\n> \n> My next suspect is the command. Not sure why, but we use MultiShot submissions, probably a copy-paste leftover.\n> \n> Now the interesting part: I changed those to OneShot, and we got even more errors. Now its 105 instead of 81. And of course if I run it one-by-one it still 54.\n> I also checked the vulkan and dx12 backend with OneShot, and those work as expected.\n> \n> One of the new fails:\n> \n> There should be only black dots.\n> \n> —\n> You are receiving this because you were mentioned.\n> Reply to this email directly, view it on GitHub, or mute the thread.\n"}}
{"actor":{"display_login":"kvark"}}